Multi-protocol Label Switching (MPLS) is a mechanism used to engineer traffic patterns within Internet Protocol (IP) networks. By using MPLS, a source device can request a path through a network, i.e., a Label Switched Path (LSP). An LSP defines a distinct path through the network to carry MPLS packets from the source device to a destination device. A short label associated with a particular LSP is affixed to packets that travel through the network via the LSP. Routers along the path cooperatively perform MPLS operations to forward the MPLS packets along the established path. LSPs may be used for a variety of traffic engineering purposes including bandwidth management and quality of service (QoS). A packet may be a formatted set of data.
A variety of protocols exist for establishing LSPs. For example, one such protocol is the label distribution protocol (LDP). Another type of protocol is a resource reservation protocol, such as the Resource Reservation Protocol with Traffic Engineering extensions (RSVP-TE). RSVP-TE uses constraint information, such as bandwidth availability, to compute paths and establish LSPs along the paths within a network. RSVP-TE may use bandwidth availability information accumulated by a link-state interior routing protocol, such as the Intermediate System-Intermediate System (ISIS) protocol or the Open Shortest Path First (OSPF) protocol.
Head-end routers of an LSP are commonly known as ingress routers, while routers at the tail-end of the LSP are commonly known as egress routers. Ingress and egress routers, as well as intermediate routers along the LSP that support MPLS, are referred to generically as label switching routers (LSRs). A set of packets to be forwarded along the LSP is referred to as a forwarding equivalence class (FEC). A plurality of FECs may exist for each LSP, but there may be only one active LSP for any given FEC. Typically, a FEC definition includes the IP address of the destination of the LSP. The ingress label edge router (LER) uses routing information, propagated from the egress LER, to determine the LSP, to assign labels for the LSP, and to affix a label to each packet of the FEC. The LSRs use MPLS protocols to receive MPLS label mappings from downstream LSRs and to advertise MPLS label mappings to upstream LSRs. When an LSR receives an MPLS packet from an upstream router, the LSR switches the MPLS label according to the information in the LSR's forwarding table and forwards the packet to the appropriate downstream LSR or LER. The egress LER removes the label from the packet and forwards the packet to its destination in accordance with standard routing protocols.
In general, each router along the LSP maintains a context that associates a FEC with an incoming label and an outgoing label. In this manner, when an LSR receives a labeled packet, the LSR may swap the label (i.e., the incoming label) with the outgoing label by performing a lookup in the context. The LSR may then forward the packet to the next LSR or LER along the LSP. The next router along the LSP is commonly referred to as a downstream router or a next hop.
Generalized MPLS (GMPLS) differs from traditional MPLS in that GMPLS supports types of switching in addition to the label switching described above. For instance, GMPLS supports time-division switching and wavelength-division switching. Because GMPLS supports these additional types of switching, GMPLS enables network devices to route data along pre-defined paths through optical networks. These paths may act like virtual circuits. Optical networks are networks of devices that are connected via optical fibers. GMPLS is defined in Internet Engineering Task Force (IETF) Request for Comments (RFC) 3945, available at http://www.ietf.org/rfc/rfc3945.txt, the entire content of which is hereby incorporated by reference.
In a time-division switching optical network, time is divided into a series of time periods of equal duration. Each of these time periods is further divided into time slots of equal duration. Similarly, in a wavelength-division switching network, a wavelength spectrum is divided into wavelengths, each wavelength representing a different slot for transmission of data. Optical network devices that support GMPLS reserve slots and utilize MPLS protocols to distribute labels, which causes the optical network devices to reserve corresponding slots, thereby establishing paths through the optical network. For example, an optical network device may reserve a first time slot of each time period for a first path through the network, a second time slot of each time period for a second path, and so on. Once a label is allocated and defined for a slot, that slot is exclusively reserved for the particular path defined through the optical network. In this way, the optical devices maintain a one-to-one correspondence between MPLS labels that are allocated in the control plane to define paths within the optical network and slots within the data plane for optically communicating data associated with the defined paths.
In GMPLS, the optical network devices exchange messages, typically via RSVP-TE, to request paths and exchange labels for slots reserved for the paths. The messages are typically communicated between the optical devices via a separate packet-switched data communication network. As an optical network device receives traffic on a slot reserved for a particular path, the device forwards the data units according to a forwarding rule for the particular path. The forwarding rule for the particular path may be established when the labels for the path where originally exchanged between the optical devices. For example, as the device receives traffic on a slot reserved for a first path, the device forwards the traffic according to a forwarding rule for the first path. In this example, as the same device receives traffic on a slot reserved for a second path, the device forwards the traffic received on the slot reserved for the second path according to a forwarding rule for the second path. In this way, the slot on which a device receives traffic may serve a function similar to a physical MPLS label carried in the data plane by packet-switched MPLS networks.
In some cases, an optical fiber or port associated with the optical fiber may break or otherwise become non-operational, causing the network devices to reroute the data along a different path within the optical network. For example, in response, optical network devices immediately upstream from the point of failure may exchange path configuration messages in the control plane to disseminate new label information to allocate slots of different optical ports so as to steer the traffic and bypass the failed link. However, exchange of control plane signaling messages to reroute the GMPLS traffic in the optical network can be slow compared to the desired transport speed of the optical network.